package com.atguigu.tingshu.search.service;

import com.atguigu.tingshu.model.search.AlbumInfoIndex;
import com.atguigu.tingshu.query.search.AlbumIndexQuery;
import com.atguigu.tingshu.vo.search.AlbumSearchResponseVo;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface SearchService {


    /**
     * 根据一级分类id获取首页展示数据
     * @param category1Id 一级分类id
     * @return 首页展示数据
     */
    List<Map<String, Object>> channel(Long category1Id);

    /**
     * 根据查询条件搜索专辑
     * @param query 查询信息封装vo
     * @return 搜索结果
     */
    AlbumSearchResponseVo search(AlbumIndexQuery query);

    /**
     * 搜索框搜索内容提示词回显
     * @param keyword 搜索框输入内容
     * @return 提示词
     */
    Set<String> completeSuggest(String keyword);

    /**
     * 根据专辑id获取专辑详情信息
     * @param albumId 专辑id
     * @return 详情信息
     */
    Map<String, Object> getAlbumInfoDetail(Long albumId);
}
